home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Whiteline: delta
/
whiteline CD Series - delta.iso
/
vision
/
animatio
/
demos
/
24hdemo
/
24hdemo.s
< prev
next >
Wrap
Text File
|
1995-11-25
|
27KB
|
1,324 lines
MODE EQU %0000000001100100
SCREEN EQU $300000
SSTACK EQU $400000
NOP EQU 095
LGH EQU 110
MNH EQU 070
TEH EQU 024
MEH EQU 036
SECTION TEXT
BRA.S STARUP
DC.B "FERGANI Bruno, 11 rue Manet, 25230 Seloncourt "
DC.B "FRANCE. Phone number: 81.37.07.78. Contact me!"
EVEN
STARUP DC.W $A00A
CLR.L -(SP)
MOVE.W #$20,-(SP)
TRAP #1
ADDQ.L #6,SP
MOVE.L D0,S_SSP1
MOVE.L SP,S_SSP2
LEA SSTACK,SP
BSR LABEL1
BSR PINITS
BSR LABEL2
BSR WITKEY
BSR LABEL3
BSR PEXITS
MOVE.L S_SSP2,SP
MOVE.L S_SSP1,-(SP)
MOVE.W #$20,-(SP)
TRAP #1
ADDQ.L #6,SP
DC.W $A009
CLR.W -(SP)
TRAP #1
PINITS MOVEM.L D0-D7/A0-A6,-(SP)
MOVE.W #2,-(SP)
TRAP #14
ADDQ.L #2,SP
MOVE.L D0,S_PHY
MOVE.W #3,-(SP)
TRAP #14
ADDQ.L #2,SP
MOVE.L D0,S_LOG
MOVE.W #-1,-(SP)
MOVE.W #88,-(SP)
TRAP #14
ADDQ.L #4,SP
MOVE.W D0,S_MODE
MOVE.W #MODE,-(SP)
MOVE.W #3,-(SP)
PEA SCREEN
PEA SCREEN
MOVE.W #5,-(SP)
TRAP #14
LEA 14(SP),SP
MOVEC CACR,D0
MOVE.L D0,S_CACR
ANDI.W #$FEFE,D0
MOVEC D0,CACR
MOVE.L $00000070.W,S_0070
MOVE.L $00000120.W,S_0120
MOVE.B $FFFFFA07.W,S_FA07
MOVE.B $FFFFFA13.W,S_FA13
MOVE.B $FFFFFA09.W,S_FA09
MOVE.B $FFFFFA15.W,S_FA15
MOVE.B $FFFFFA17.W,S_FA17
MOVE #$2700,SR
CLR.B $FFFFFA07.W
CLR.B $FFFFFA13.W
CLR.B $FFFFFA09.W
CLR.B $FFFFFA15.W
MOVE.L #VBLSNX,$0070.W
MOVE.L #HBLSX1,$0120.W
BCLR #$3,$FFFFFA17.W
OR.B #$1,$FFFFFA07.W
OR.B #$1,$FFFFFA13.W
MOVE #$2300,SR
MOVEQ #$2,D0
BSR WITVBL
CLR.L $FFFF9800.W
MOVEM.L (SP)+,D0-D7/A0-A6
RTS
PEXITS MOVEM.L D0-D7/A0-A6,-(SP)
MOVEQ #$2,D0
BSR WITVBL
MOVE #$2700,SR
MOVE.L S_0070,$00000070.W
MOVE.L S_0120,$00000120.W
MOVE.B S_FA07,$FFFFFA07.W
MOVE.B S_FA13,$FFFFFA13.W
MOVE.B S_FA09,$FFFFFA09.W
MOVE.B S_FA15,$FFFFFA15.W
MOVE.B S_FA17,$FFFFFA17.W
ACIAON BTST #0,$FFFFFC00.W
BEQ.S ACIAOF
MOVE.B $FFFFFC02.W,D0
BRA.S ACIAON
ACIAOF MOVE.L S_CACR,D0
MOVEC D0,CACR
MOVE #$2300,SR
MOVE.W S_MODE,-(SP)
MOVE.W #3,-(SP)
MOVE.L S_PHY,-(SP)
MOVE.L S_LOG,-(SP)
MOVE.W #5,-(SP)
TRAP #14
LEA 14(SP),SP
MOVEM.L (SP)+,D0-D7/A0-A6
RTS
VBLSNX MOVEM.L D0/A0,-(SP)
LEA PTRLOG,A0
MOVE.B $1(A0),$FFFF8201.W
MOVE.B $2(A0),$FFFF8203.W
MOVE.B $3(A0),$FFFF820D.W
CLR.W $FFFF820E.W
CLR.B $FFFFFA1B.W
MOVE.B #LGH,$FFFFFA21.W
MOVE.L #HBLSX1,$00120.W
MOVE.B #$08,$FFFFFA1B.W
MOVE.L PTRMNT,A0
MOVE.L ADDMNT,D0
ADD.L D0,A0
MOVE.L A0,CRTMNT
ADDI.L #002*2,D0
CMPI.L #384*2,D0
BCS.S MNTNEN
MOVEQ #00,D0
MNTNEN MOVE.L D0,ADDMNT
MOVE.L PTRTER,A0
MOVE.L ADDTER,D0
ADD.L D0,A0
MOVE.L A0,CRTTER
ADDI.L #004*2,D0
CMPI.L #384*2,D0
BCS.S TERNEN
MOVEQ #00,D0
TERNEN MOVE.L D0,ADDTER
MOVE.L PTRMER,A0
MOVE.L ADDMER,D0
ADD.L D0,A0
MOVE.L A0,CRTMER
ADDI.L #006*2,D0
CMPI.L #384*2,D0
BCS.S MERNEN
MOVEQ #00,D0
MERNEN MOVE.L D0,ADDMER
ADDQ.W #1,VBLCNT
MOVEM.L (SP)+,D0/A0
RTE
HBLSX1 MOVE #$2700,SR
MOVEM.L D0-D1/A0-A1,-(SP)
LEA $FFFF8209.W,A0
MOVE.B (A0),D0
SYNCN1 CMP.B (A0),D0
BEQ.S SYNCN1
DCB.W NOP,$4E71
LEA $FFFF8203.W,A0
LEA $FFFF820E.W,A1
MOVE.L CRTMNT,D0
MOVE.W #384,D1
MOVE.W D1,(A1)
MOVEP.L D0,(A0)
CLR.B $FFFFFA1B.W
MOVE.B #MNH,$FFFFFA21.W
MOVE.L #HBLSX2,$00120.W
MOVE.B #$08,$FFFFFA1B.W
MOVEM.L (SP)+,D0-D1/A0-A1
RTE
HBLSX2 MOVE #$2700,SR
MOVEM.L D0-D1/A0-A1,-(SP)
LEA $FFFF8209.W,A0
MOVE.B (A0),D0
SYNCN2 CMP.B (A0),D0
BEQ.S SYNCN2
DCB.W NOP,$4E71
LEA $FFFF8203.W,A0
LEA $FFFF820E.W,A1
MOVE.L CRTTER,D0
MOVE.W #384,D1
MOVE.W D1,(A1)
MOVEP.L D0,(A0)
CLR.B $FFFFFA1B.W
MOVE.B #TEH,$FFFFFA21.W
MOVE.L #HBLSX3,$00120.W
MOVE.B #$08,$FFFFFA1B.W
MOVEM.L (SP)+,D0-D1/A0-A1
RTE
HBLSX3 MOVE #$2700,SR
MOVEM.L D0-D1/A0-A1,-(SP)
LEA $FFFF8209.W,A0
MOVE.B (A0),D0
SYNCN3 CMP.B (A0),D0
BEQ.S SYNCN3
DCB.W NOP,$4E71
LEA $FFFF8203.W,A0
LEA $FFFF820E.W,A1
MOVE.L CRTMER,D0
MOVE.W #384,D1
MOVE.W D1,(A1)
MOVEP.L D0,(A0)
CLR.B $FFFFFA1B.W
MOVE.B #MEH,$FFFFFA21.W
MOVE.L #HBLSX4,$00120.W
MOVE.B #$08,$FFFFFA1B.W
MOVEM.L (SP)+,D0-D1/A0-A1
RTE
HBLSX4 RTE
WITKEY CMP.B #$39,$FFFFFC02.W
BNE.S WITKEY
RELKEY CMP.B #$B9,$FFFFFC02.W
BNE.S RELKEY
RTS
WITVBL MOVE.W VBLCNT,D1
ADD.W D0,D1
WITNEW CMP.W VBLCNT,D1
BCS.S WITNEW
RTS
LABEL1 BRA INITALL
LABEL2 BRA INITMFP
LABEL3 BRA RESTORE
INITALL MOVE.W #1,-(A7)
MOVE.W #1,-(A7)
MOVE.W #0,-(A7)
MOVE.W #8,-(A7)
MOVE.W #1,-(A7)
MOVE.W #$8B,-(A7)
TRAP #14
LEA $C(A7),A7
MOVE.W #0,-(A7)
MOVE.W #1,-(A7)
MOVE.W #$89,-(A7)
TRAP #14
ADDQ.W #6,A7
LEA L732E2,A0
MOVEA.L A0,A1
MOVE.L #$5EC,D0
LSR.L #2,D0
SUBQ.W #1,D0
.COPIE ADDQ.L #1,A1
MOVE.B (A1)+,(A0)+
MOVE.B (A1)+,(A0)+
MOVE.B (A1)+,(A0)+
DBF D0,.COPIE
MOVE.W #1,-(A7)
MOVE.L #$17B,-(A7)
PEA L732E2(PC)
MOVE.W #$6E,-(A7)
TRAP #14
LEA $C(A7),A7
BSR L7280E
BSR L72702
BSR L7283E
RTS
RESTORE MOVE.L M_0134,$00000134.W
MOVE.B M_FA19,$FFFFFA19.W
MOVE.B M_FA1F,$FFFFFA1F.W
MOVE.B M_FA07,$FFFFFA07.W
MOVE.B M_FA13,$FFFFFA13.W
BCLR #5,$FFFFFA07.W
BCLR #5,$FFFFFA13.W
MOVE.W #1,-(A7)
MOVE.W #0,-(A7)
MOVE.W #0,-(A7)
MOVE.W #8,-(A7)
MOVE.W #0,-(A7)
MOVE.W #$8B,-(A7)
TRAP #14
LEA $C(A7),A7
MOVE.W #0,-(A7)
MOVE.W #$84,-(A7)
TRAP #14
ADDQ.W #4,A7
RTS
INITMFP MOVE.L $00000134.W,M_0134
MOVE.B $FFFFFA19.W,M_FA19
MOVE.B $FFFFFA1F.W,M_FA1F
MOVE.B $FFFFFA07.W,M_FA07
MOVE.B $FFFFFA13.W,M_FA13
BCLR #3,$FFFFFA17.W
BSET #5,$FFFFFA07.W
BSET #5,$FFFFFA13.W
MOVE.B #$CC,$FFFFFA1F.W
MOVE.B #$07,$FFFFFA19.W
MOVE.L #TIMERA,$134.W
RTS
M_0134 DC.L 0
M_FA19 DC.B 0
M_FA1F DC.B 0
M_FA07 DC.B 0
M_FA13 DC.B 0
TIMERA MOVE #$2500,SR
MOVEM.L D0-D7/A0-A6,-(A7)
LEA $FFFFA200.W,A6
LEA LCA6F6,A0
LEA LCA6F2,A1
CLR.B $7(A6)
BSR.S L72660
BSR.S L72660
BSR.S L72660
BSR.S L72660
BSR L72C4C
MOVEM.L (A7)+,D0-D7/A0-A6
RTE
L72660 MOVE.B $F(A1),5(A6)
CLR.W 6(A6)
MOVE.W $C(A1),D0
LEA 0(A0,D0.W*4),A3
MOVE.B 1(A3),5(A6)
MOVE.W 2(A3),6(A6)
MOVEQ #0,D0
L72680 BTST #0,2(A6)
BEQ.S L72680
MOVE.B 5(A6),D0
LSL.L #8,D0
MOVE.B 6(A6),D0
LSL.L #8,D0
MOVE.B 7(A6),D0
TST.W $10(A1)
BRA.S L726A8
CLR.W $10(A1)
MOVEA.L 0(A1),A2
BRA.S L726BC
L726A8 ADD.L 0(A1),D0
CMP.L 4(A1),D0
BCS.S L726B6
SUB.L 8(A1),D0
L726B6 MOVE.L D0,0(A1)
MOVEA.L D0,A2
L726BC MOVEQ #0,D0
L726BE BTST #0,2(A6)
BEQ.S L726BE
MOVE.B 5(A6),D0
LSL.L #8,D0
MOVE.B 6(A6),D0
LSL.L #8,D0
MOVE.B 7(A6),D0
DIVU.W #3,D0
ADDQ.W #2,D0
MOVE.W D0,D2
CLR.B 5(A6)
ROL.W #8,D0
MOVE.B D0,6(A6)
ROL.W #8,D0
MOVE.B D0,7(A6)
SUBQ.W #1,D2
L726F0 MOVE.B (A2)+,5(A6)
MOVE.W (A2)+,6(A6)
DBF D2,L726F0
ADDA.W #$12,A1
RTS
L72702 LEA MODULE,A0
LEA $3B6(A0),A1
LEA $86(A1),A2
MOVEQ #$1E,D0
CMPI.L #$4D2E4B2E,$438(A0)
BEQ.S L72726
LEA $1D6(A0),A1
LEA $82(A1),A2
MOVEQ #$E,D0
L72726 MOVE.L A1,LCA66C
MOVE.L A2,LCA670
MOVE.W D0,LCA674
MOVEA.L LCA66C,A1
ADDQ.L #2,A1
MOVEQ #$7F,D0
MOVEQ #0,D1
L72744 MOVE.B (A1)+,D2
CMP.B D2,D1
BCC.S L7274C
MOVE.B D2,D1
L7274C DBF D0,L72744
ADDQ.W #1,D1
MULU.W #$400,D1
MOVEA.L LCA670,A1
LEA 0(A1,D1.L),A1
LEA $2A(A0),A2
MOVEQ #0,D2
MOVE.W LCA674,D0
L7276C MOVE.W (A2),D3
EXT.L D3
ADD.L D3,D3
ADD.L D3,D2
ADDA.W #$1E,A2
DBF D0,L7276C
LEA FINMOD,A2
MOVEA.L A1,A3
ADDA.L D2,A1
L72788 MOVE.W -(A1),-(A2)
SUBQ.L #2,D2
BNE.S L72788
LEA LCA676,A1
MOVE.W LCA674,D0
L7279A MOVE.L A3,(A1)+
TST.W $2A(A0)
BEQ.S L72804
TST.W $2E(A0)
BNE.S L727BA
MOVE.W $2A(A0),D1
MOVE.W D1,D3
SUBQ.W #1,D1
MOVEA.L A3,A4
L727B2 MOVE.W (A2)+,(A3)+
DBF D1,L727B2
BRA.S L727D2
L727BA MOVE.W $2E(A0),D1
MOVE.W D1,D3
SUBQ.W #1,D1
MOVEA.L A2,A4
L727C4 MOVE.W (A4)+,(A3)+
DBF D1,L727C4
ADDA.W $2A(A0),A2
ADDA.W $2A(A0),A2
L727D2 MOVEA.L A3,A5
MOVEQ #0,D1
L727D6 MOVEA.L A4,A6
MOVE.W $30(A0),D2
SUBQ.W #1,D2
L727DE MOVE.W (A6)+,(A3)+
ADDQ.W #2,D1
DBF D2,L727DE
CMP.W #$384,D1
BCS.S L727D6
MOVE.W #$1C1,D2
L727F0 MOVE.W (A5)+,(A3)+
DBF D2,L727F0
ADD.W D3,D3
MOVE.W D3,$2A(A0)
MOVE.W D1,$30(A0)
CLR.W $2E(A0)
L72804 LEA $1E(A0),A0
DBF D0,L7279A
RTS
L7280E LEA LCA6F6,A0
MOVE.W #$4F,D0
L72818 CLR.L (A0)+
DBF D0,L72818
MOVE.W #$31F,D0
MOVE.L #$50,D1
MOVE.L #$24665268,D2
L7282E MOVE.L D2,D4
DIVU.L D1,D4
MOVE.L D4,(A0)+
ADDQ.L #1,D1
DBF D0,L7282E
RTS
L7283E LEA LCB4B6,A0
MOVEA.L A0,A1
LEA $384(A1),A2
MOVE.W #$383,D0
L7284E CLR.W (A0)+
DBF D0,L7284E
LEA LCA6F2,A0
MOVE.W #3,D0
L7285E MOVE.L A1,0(A0)
MOVE.L A2,4(A0)
MOVE.L #$384,8(A0)
MOVE.W #$320,$C(A0)
CLR.W $E(A0)
MOVE.W #$FFFF,$10(A0)
ADDA.W #$12,A0
DBF D0,L7285E
RTS
L72888 DC.L L728C4
L7288C DC.W 0
L7288E DC.W 0
L72890 DC.W 0
L72892 DC.W 0
L72894 DC.W 0
L72896 DC.W 0
L72898 DC.L L728C4
L7289C DC.W 0
L7289E DC.W 0
L728A0 DC.W 0
L728A2 DC.W 0
L728A4 DC.W 0
L728A6 DC.W 0
L728A8 DC.L L728C4
L728AC DC.W 0
L728AE DC.W 0
L728B0 DC.W 0
L728B2 DC.W 0
L728B4 DC.W 0
L728B6 DC.W 0
L728B8 DC.L L728C4
L728BC DC.W 0
L728BE DC.W 0
L728C0 DC.W 0
L728C2 DC.W 0
L728C4 DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
DC.B $00,$00,$00,$00,$00,$00,$00,$00
L72C4C LEA MODULE,A0
ADDQ.W #1,L7326A
MOVE.W L7326A(PC),D0
CMP.W L73268(PC),D0
BNE.S L72C6E
MOVE.W #$FFFF,L7326A
BRA L72CA2
L72C6E LEA L73272(PC),A4
LEA L72888(PC),A3
BSR L72F42
LEA L7328E(PC),A4
LEA L72898(PC),A3
BSR L72F42
LEA L732AA(PC),A4
LEA L728A8(PC),A3
BSR L72F42
LEA L732C6(PC),A4
LEA L728B8(PC),A3
BSR L72F42
BRA L72E0C
L72CA2 MOVEA.L LCA670,A0
MOVEA.L LCA66C,A1
ADDQ.L #2,A1
LEA MODULE,A2
LEA $2A(A2),A2
MOVEQ #0,D0
MOVE.L D0,D1
MOVE.B L7326C(PC),D0
MOVE.B 0(A1,D0.W),D1
MOVEQ #$A,D2
ASL.L D2,D1
ADD.W L7326E(PC),D1
CLR.W L73270
LEA L72888(PC),A3
LEA L73272(PC),A4
BSR L72E68
LEA L72898(PC),A3
LEA L7328E(PC),A4
BSR L72E68
LEA L728A8(PC),A3
LEA L732AA(PC),A4
BSR L72E68
LEA L728B8(PC),A3
LEA L732C6(PC),A4
BSR L72E68
LEA LCA6F2,A0
MOVE.W L73270(PC),D0
BTST #0,D0
BEQ.S L72D3A
MOVEQ #0,D1
MOVEQ #0,D2
MOVE.W L7288C(PC),D1
MOVE.W L73280(PC),D2
ADD.L D2,D1
MOVE.L L72888(PC),0(A0)
ADD.L L72888(PC),D1
MOVE.L D1,4(A0)
MOVE.L D2,8(A0)
MOVE.W #$FFFF,$10(A0)
L72D3A LEA $12(A0),A0
BTST #1,D0
BEQ.S L72D6A
MOVEQ #0,D1
MOVEQ #0,D2
MOVE.W L7289C(PC),D1
MOVE.W L7329C(PC),D2
ADD.L D2,D1
MOVE.L L72898(PC),0(A0)
ADD.L L72898(PC),D1
MOVE.L D1,4(A0)
MOVE.L D2,8(A0)
MOVE.W #$FFFF,$10(A0)
L72D6A LEA $12(A0),A0
BTST #2,D0
BEQ.S L72D9A
MOVEQ #0,D1
MOVEQ #0,D2
MOVE.W L728AC(PC),D1
MOVE.W L732B8(PC),D2
ADD.L D2,D1
MOVE.L L728A8(PC),0(A0)
ADD.L L728A8(PC),D1
MOVE.L D1,4(A0)
MOVE.L D2,8(A0)
MOVE.W #$FFFF,$10(A0)
L72D9A LEA $12(A0),A0
BTST #3,D0
BEQ.S L72DCA
MOVEQ #0,D1
MOVEQ #0,D2
MOVE.W L728BC(PC),D1
MOVE.W L732D4(PC),D2
ADD.L D2,D1
MOVE.L L728B8(PC),0(A0)
ADD.L L728B8(PC),D1
MOVE.L D1,4(A0)
MOVE.L D2,8(A0)
MOVE.W #$FFFF,$10(A0)
L72DCA ADDI.W #$10,L7326E
CMPI.W #$400,L7326E
BNE.S L72E0C
L72DDC CLR.W L7326E
CLR.B L7326D
ADDQ.B #1,L7326C
ANDI.B #$7F,L7326C
MOVE.B L7326C(PC),D1
MOVEA.L LCA66C,A0
CMP.B (A0),D1
BNE.S L72E0C
MOVE.B 1(A0),L7326C
L72E0C TST.B L7326D
BNE.S L72DDC
LEA LCA6F2,A0
MOVE.W L7288E,$C(A0)
MOVE.W L72890,$E(A0)
LEA $12(A0),A0
MOVE.W L7289E,$C(A0)
MOVE.W L728A0,$E(A0)
LEA $12(A0),A0
MOVE.W L728AE,$C(A0)
MOVE.W L728B0,$E(A0)
LEA $12(A0),A0
MOVE.W L728BE,$C(A0)
MOVE.W L728C0,$E(A0)
RTS
L72E68 MOVE.L 0(A0,D1.L),(A4)
ADDQ.L #4,D1
MOVEQ #0,D2
MOVE.B 2(A4),D2
ANDI.B #$F0,D2
LSR.B #4,D2
MOVE.B (A4),D0
ANDI.B #$F0,D0
OR.B D0,D2
TST.B D2
BEQ.S L72EEA
MOVEQ #0,D3
SUBQ.L #1,D2
MOVE.L D2,D4
ASL.L #2,D2
MULU.W #$1E,D4
LEA LCA676,A1
MOVE.L 0(A1,D2.L),4(A4)
MOVE.W 0(A2,D4.L),8(A4)
MOVE.W 2(A2,D4.L),$12(A4)
MOVE.W 4(A2,D4.L),D3
BEQ.S L72ED6
MOVE.L 4(A4),D2
ADD.W D3,D3
ADD.L D3,D2
MOVE.L D2,$A(A4)
MOVE.W 4(A2,D4.L),D0
ADD.W 6(A2,D4.L),D0
MOVE.W D0,8(A4)
MOVE.W 6(A2,D4.L),$E(A4)
MOVE.W $12(A4),8(A3)
BRA.S L72EEA
L72ED6 MOVE.L 4(A4),D2
MOVE.L D2,$A(A4)
MOVE.W 6(A2,D4.L),$E(A4)
MOVE.W $12(A4),8(A3)
L72EEA MOVE.W (A4),D0
ANDI.W #$FFF,D0
BEQ L731E8
MOVE.B 2(A4),D0
ANDI.B #$F,D0
CMP.B #3,D0
BNE.S L72F0A
BSR L73108
BRA L731E8
L72F0A MOVE.W (A4),$10(A4)
ANDI.W #$FFF,$10(A4)
MOVE.W $14(A4),D0
MOVE.W D0,L728C2
CLR.B $1B(A4)
MOVE.L 4(A4),(A3)
MOVE.W 8(A4),4(A3)
MOVE.W $10(A4),D0
MOVE.W D0,6(A3)
MOVE.W $14(A4),D0
OR.W D0,L73270
BRA L731E8
L72F42 MOVE.W 2(A4),D0
ANDI.W #$FFF,D0
BEQ.S L72F9A
MOVE.B 2(A4),D0
ANDI.B #$F,D0
TST.B D0
BEQ L72FA2
CMP.B #1,D0
BEQ L73044
CMP.B #2,D0
BEQ L73076
CMP.B #3,D0
BEQ L730A8
CMP.B #4,D0
BEQ L7312E
CMP.B #5,D0
BEQ L7319C
CMP.B #6,D0
BEQ L731A2
MOVE.W $10(A4),6(A3)
CMP.B #$A,D0
BEQ L731A6
RTS
L72F9A MOVE.W $10(A4),6(A3)
RTS
L72FA2 MOVEQ #0,D0
MOVE.W L7326A(PC),D0
DIVS.W #3,D0
SWAP D0
TST.W D0
BEQ.S L72FCE
CMP.W #2,D0
BEQ.S L72FC2
MOVEQ #0,D0
MOVE.B 3(A4),D0
LSR.B #4,D0
BRA.S L72FD4
L72FC2 MOVEQ #0,D0
MOVE.B 3(A4),D0
ANDI.B #$F,D0
BRA.S L72FD4
L72FCE MOVE.W $10(A4),D2
BRA.S L72FF2
L72FD4 ADD.W D0,D0
MOVEQ #0,D1
MOVE.W $10(A4),D1
LEA L72FF8(PC),A0
MOVEQ #$24,D4
L72FE2 MOVE.W 0(A0,D0.W),D2
CMP.W (A0),D1
BGE.S L72FF2
ADDQ.L #2,A0
DBF D4,L72FE2
RTS
L72FF2 MOVE.W D2,6(A3)
RTS
L72FF8 DC.W $0358,$0328,$02FA,$02D0
DC.W $02A6,$0280,$025C,$023A
DC.W $021A,$01FC,$01E0,$01C5
DC.W $01AC,$0194,$017D,$0168
DC.W $0153,$0140,$012E,$011D
DC.W $010D,$00FE,$00F0,$00E2
DC.W $00D6,$00CA,$00BE,$00B4
DC.W $00AA,$00A0,$0097,$008F
DC.W $0087,$007F,$0078,$0071
DC.W $0000,$0000
L73044 MOVEQ #0,D0
MOVE.B 3(A4),D0
SUB.W D0,$10(A4)
MOVE.W $10(A4),D0
ANDI.W #$FFF,D0
CMP.W #$71,D0
BPL.S L73068
ANDI.W #$F000,$10(A4)
ORI.W #$71,$10(A4)
L73068 MOVE.W $10(A4),D0
ANDI.W #$FFF,D0
MOVE.W D0,6(A3)
RTS
L73076 CLR.W D0
MOVE.B 3(A4),D0
ADD.W D0,$10(A4)
MOVE.W $10(A4),D0
ANDI.W #$FFF,D0
CMP.W #$358,D0
BMI.S L7309A
ANDI.W #$F000,$10(A4)
ORI.W #$358,$10(A4)
L7309A MOVE.W $10(A4),D0
ANDI.W #$FFF,D0
MOVE.W D0,6(A3)
RTS
L730A8 MOVE.B 3(A4),D0
BEQ.S L730B6
MOVE.B D0,$17(A4)
CLR.B 3(A4)
L730B6 TST.W $18(A4)
BEQ.S L7312C
MOVEQ #0,D0
MOVE.B $17(A4),D0
TST.B $16(A4)
BNE.S L730E8
ADD.W D0,$10(A4)
MOVE.W $18(A4),D0
CMP.W $10(A4),D0
BGT.S L730E0
MOVE.W $18(A4),$10(A4)
CLR.W $18(A4)
L730E0 MOVE.W $10(A4),6(A3)
RTS
L730E8 SUB.W D0,$10(A4)
MOVE.W $18(A4),D0
CMP.W $10(A4),D0
BLT.S L730E0
MOVE.W $18(A4),$10(A4)
CLR.W $18(A4)
MOVE.W $10(A4),6(A3)
RTS
L73108 MOVE.W (A4),D2
ANDI.W #$FFF,D2
MOVE.W D2,$18(A4)
MOVE.W $10(A4),D0
CLR.B $16(A4)
CMP.W D0,D2
BEQ.S L73128
BGE.S L7312C
MOVE.B #1,$16(A4)
RTS
L73128 CLR.W $18(A4)
L7312C RTS
L7312E MOVE.B 3(A4),D0
BEQ.S L73138
MOVE.B D0,$1A(A4)
L73138 MOVE.B $1B(A4),D0
LEA L7317C(PC),A1
LSR.W #2,D0
ANDI.W #$1F,D0
MOVEQ #0,D2
MOVE.B 0(A1,D0.W),D2
MOVE.B $1A(A4),D0
ANDI.W #$F,D0
MULU.W D0,D2
LSR.W #6,D2
MOVE.W $10(A4),D0
TST.B $1B(A4)
BMI.S L73166
ADD.W D2,D0
BRA.S L73168
L73166 SUB.W D2,D0
L73168 MOVE.W D0,6(A3)
MOVE.B $1A(A4),D0
LSR.W #2,D0
ANDI.W #$3C,D0
ADD.B D0,$1B(A4)
RTS
L7317C DC.B $00,$18,$31,$4A,$61,$78,$8D,$A1
DC.B $B4,$C5,$D4,$E0,$EB,$F4,$FA,$FD
DC.B $FF,$FD,$FA,$F4,$EB,$E0,$D4,$C5
DC.B $B4,$A1,$8D,$78,$61,$4A,$31,$18
L7319C BSR L730B6
BRA.S L731A6
L731A2 BSR L73138
L731A6 MOVEQ #0,D0
MOVE.B 3(A4),D0
LSR.B #4,D0
TST.B D0
BEQ.S L731CC
ADD.W D0,$12(A4)
CMPI.W #$40,$12(A4)
BMI.S L731C4
MOVE.W #$40,$12(A4)
L731C4 MOVE.W $12(A4),8(A3)
RTS
L731CC MOVEQ #0,D0
MOVE.B 3(A4),D0
ANDI.B #$F,D0
SUB.W D0,$12(A4)
BPL.S L731E0
CLR.W $12(A4)
L731E0 MOVE.W $12(A4),8(A3)
RTS
L731E8 MOVE.B 2(A4),D0
ANDI.B #$F,D0
CMP.B #$D,D0
BEQ.S L7320A
CMP.B #$B,D0
L731FA BEQ.S L73212
CMP.B #$C,D0
BEQ.S L73226
CMP.B #$F,D0
BEQ.S L73246
RTS
L7320A ST L7326D
RTS
L73212 MOVE.B 3(A4),D0
SUBQ.B #1,D0
MOVE.B D0,L7326C
ST L7326D
RTS
L73226 MOVEQ #0,D0
MOVE.B 3(A4),D0
CMP.W #$40,D0
BLE.S L73238
MOVE.B #$40,3(A4)
L73238 MOVE.B 3(A4),9(A3)
MOVE.B 3(A4),$13(A4)
RTS
L73246 CMPI.B #$1F,3(A4)
BLE.S L73254
MOVE.B #$1F,3(A4)
L73254 MOVE.B 3(A4),D0
BEQ.S L73266
MOVE.W D0,L73268
CLR.W L7326A
L73266 RTS
L73268 DC.W 6
L7326A DC.W 0
L7326C DC.B 0
L7326D DC.B 0
L7326E DC.W 0
L73270 DC.W 0
L73272 DC.W $0000,$0000,$0000,$0000,$0000,$0000,$0000
L73280 DC.W $0000,$0000,$0000,$0001,$0000,$0000,$0000
L7328E DC.W $0000,$0000,$0000,$0000,$0000,$0000,$0000
L7329C DC.W $0000,$0000,$0000,$0002,$0000,$0000,$0000
L732AA DC.W $0000,$0000,$0000,$0000,$0000,$0000,$0000
L732B8 DC.W $0000,$0000,$0000,$0004,$0000,$0000,$0000
L732C6 DC.W $0000,$0000,$0000,$0000,$0000,$0000,$0000
L732D4 DC.W $0000,$0000,$0000,$0008,$0000,$0000,$0000
L732E2 DC.L $000AF080,$00000040,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $000BF080,$00000145,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $00000000,$00000000,$00000000,$00000000
DC.L $0008F4BE,$00000000,$0008F4A0,$00000001
DC.L $0066F400,$00001000,$0067F400,$0000133E
DC.L $0005F426,$00000671,$000467A6,$0020001B
DC.L $000672A6,$00495E00,$00200013,$00560600
DC.L $00560500,$00560D00,$00560C00,$00561400
DC.L $00561300,$00561B00,$00561A00,$0056F400
DC.L $00000000,$0057F400,$00000000,$00560100
DC.L $00570200,$00570800,$00560900,$00570F00
DC.L $00561000,$00561600,$00571700,$0008F4BF
DC.L $00003000,$0008F4AC,$00004100,$0008F4AD
DC.L $00005800,$0008F4A1,$000001F0,$0008F4A3
DC.L $00000008,$0000FCB8,$000AA980,$0000006E
DC.L $0008452B,$000AA523,$0022EF00,$0022C400
DC.L $0020004C,$0020002E,$00571C00,$0022D500
DC.L $0060F400,$00000200,$0061F400,$00000003
DC.L $000BF080,$0000014B,$0060F400,$0000032C
DC.L $0061F400,$0000000A,$000BF080,$0000014B
DC.L $0060F400,$00000458,$0061F400,$00000011
DC.L $000BF080,$0000014B,$0060F400,$00000584
DC.L $0061F400,$00000018,$000BF080,$0000014B
DC.L $000AA503,$0046F400,$00700000,$0047F400
DC.L $00000000,$00448300,$002000D0,$00560100
DC.L $002000C0,$00560200,$00448A00,$002000D0
DC.L $00560900,$002000C0,$00560800,$00449100
DC.L $002000D0,$00561000,$002000C0,$00560F00
DC.L $00449800,$002000D0,$00561600,$002000C0
DC.L $00561700,$0060F400,$00000200,$000BF080
DC.L $00000163,$0060F400,$000006B0,$00578600
DC.L $00448400,$0045D800,$00468100,$004682E0
DC.L $0021C700,$002000E0,$0021C600,$00709C00
DC.L $0006D800,$000000C4,$00200048,$000AF0A5
DC.L $000000C4,$000ACD57,$0045D800,$00468100
DC.L $004682E0,$0021C700,$002000E0,$0021C600
DC.L $00435E00,$00570600,$00220F00,$0044F400
DC.L $000006B1,$0020004C,$00570500,$0060F400
DC.L $0000032C,$000BF080,$00000163,$0022B600
DC.L $0060F400,$000006B0,$00578D00,$00448B00
DC.L $0045D800,$00468800,$004689E0,$0021C700
DC.L $002000E0,$0021C600,$00709C00,$0006D800
DC.L $000000EC,$00200048,$000AF0A5,$000000E7
DC.L $000ACD57,$0045D800,$00468800,$004689E0
DC.L $0021C700,$002000E0,$0021C600,$0056E600
DC.L $00200070,$00566600,$005EE600,$00200050
DC.L $005E5E00,$00570D00,$00220F00,$0044F400
DC.L $000006B1,$0020004C,$00570C00,$0060F400
DC.L $00000458,$000BF080,$00000163,$0022B600
DC.L $0060F400,$000006B0,$00579400,$00449200
DC.L $0045D800,$00468F00,$004690E0,$0021C700
DC.L $002000E0,$0021C600,$00709C00,$0006D800
DC.L $00000114,$00200048,$000AF0A5,$0000010F
DC.L $000ACD57,$0045D800,$00468F00,$004690E0
DC.L $0021C700,$002000E0,$0021C600,$0056E600
DC.L $00200070,$00566600,$005EE600,$00200050
DC.L $005E5E00,$00571400,$00220F00,$0044F400
DC.L $000006B1,$0020004C,$00571300,$0060F400
DC.L $00000584,$000BF080,$00000163,$0022B600
DC.L $0060F400,$000006B0,$00579B00,$00449900
DC.L $0045D800,$00469600,$004697E0,$0021C700
DC.L $002000E0,$0021C600,$00709C00,$0006D800
DC.L $0000013C,$00200048,$000AF0A5,$00000137
DC.L $000ACD57,$0045D800,$00469600,$004697E0
DC.L $0021C700,$002000E0,$0021C600,$0056E600
DC.L $00200070,$00566600,$005EE600,$00200050
DC.L $005E5E00,$00571B00,$00220F00,$0044F400
DC.L $000006B1,$0020004C,$00571A00,$000AF080
DC.L $0000006E,$000AAE82,$00000149,$0008E7EF
DC.L $00000004,$0008DFAF,$00000004,$000AA980
DC.L $0000014B,$000859AB,$000AA980,$0000014E
DC.L $0008452B,$00455900,$00449C00,$002000A8
DC.L $000AA981,$00000154,$0008E1AB,$000AA981
DC.L $00000157,$0008CF2B,$000AA980,$0000015A
DC.L $0008442B,$0006C400,$00000161,$000AA980
DC.L $0000015F,$000858AB,$0000000C,$0061F400
DC.L $000006B0,$00062C81,$00000179,$0057E000
DC.L $0044F400,$00FF0000,$0045F44E,$00000080
DC.L $00555900,$0044E000,$0044F4A8,$00FF0000
DC.L $00212F00,$0045F44E,$00008000,$00555900
DC.L $0044D800,$0044F4A8,$00FF0000,$00212F00
DC.L $0020004E,$00555900,$0000000C
SECTION DATA
PTRLOG DC.L SANEXT
PTRMNT DC.L SANMNT
PTRTER DC.L SANTER
PTRMER DC.L SANMER
SANEXT INCBIN 'SANEXT.BMP'
EVEN
SANMNT INCBIN 'SANMNT.BMP'
EVEN
SANTER INCBIN 'SANTER.BMP'
EVEN
SANMER INCBIN 'SANMER.BMP'
EVEN
MODULE INCBIN 'PSYTRO.MOD'
EVEN
SECTION BSS
DS.W 14000
FINMOD
LCA66C DS.L 001
LCA670 DS.L 001
LCA674 DS.W 001
LCA676 DS.L 031
LCA6F2 DS.L 001
LCA6F6 DS.L 080
LCA836 DS.L 800
LCB4B6 DS.W 900
ADDMNT DS.L 1
CRTMNT DS.L 1
ADDTER DS.L 1
CRTTER DS.L 1
ADDMER DS.L 1
CRTMER DS.L 1
VBLCNT DS.W 1
S_SSP1 DS.L 1
S_SSP2 DS.L 1
S_PHY DS.L 1
S_LOG DS.L 1
S_0070 DS.L 1
S_0120 DS.L 1
S_CACR DS.L 1
S_MODE DS.W 1
S_FA07 DS.B 1
S_FA13 DS.B 1
S_FA09 DS.B 1
S_FA15 DS.B 1
S_FA17 DS.B 1
END